GraphLinksModel
由节点和子图组成的图模型的通用实施,任何数量的明确链接数据都代表任何两个节点之间的链接.
继承自: DiagramModel
实现: ILinksModel, IDiagramModel, ISubGraphLinksModel, ISubGraphModel, IGroupsModel
构造函数
属性
public string GroupNodePath { get; set; }
value = graphLinksModel.GroupNodePath
graphLinksModel.GroupNodePath = value
获取或设置属性路径,指定如何获取节点数据对象的"容器"或组节点数据的密钥.
public string LinkCategoryPath { get; set; }
value = graphLinksModel.LinkCategoryPath
graphLinksModel.LinkCategoryPath = value
获取或设置属性路径,指定如何找到链接数据的类别。
public string LinkFromParameterPath { get; set; }
value = graphLinksModel.LinkFromParameterPath
graphLinksModel.LinkFromParameterPath = value
获取或设置属性路径,用于指定如何获取链接数据对象"从"节点数据获取的可选"端口"参数信息.
public string LinkFromPath { get; set; }
value = graphLinksModel.LinkFromPath
graphLinksModel.LinkFromPath = value
获取或设置属性路径,指定如何从链接数据对象的"从"节点数据获取密钥.
public string LinkLabelNodePath { get; set; }
value = graphLinksModel.LinkLabelNodePath
graphLinksModel.LinkLabelNodePath = value
获取或设置属性路径,指定如何获取链接数据对象"标签"节点数据的密钥.
public IEnumerable LinksSource { get; set; }
value = graphLinksModel.LinksSource
graphLinksModel.LinksSource = value
获取或设置模型的链接数据项的收集.
public string LinkToParameterPath { get; set; }
value = graphLinksModel.LinkToParameterPath
graphLinksModel.LinkToParameterPath = value
获取或设置属性路径,该路径可指定如何获取链接数据对象"到"节点数据的可选"端口"参数信息.
public string LinkToPath { get; set; }
value = graphLinksModel.LinkToPath
graphLinksModel.LinkToPath = value
获取或设置属性路径,指定如何获取链接数据对象"到"节点数据的密钥.
public string MemberNodesPath { get; set; }
value = graphLinksModel.MemberNodesPath
graphLinksModel.MemberNodesPath = value
获取或设置属性路径,指定如何为组节点数据对象的"成员"节点获取一个密钥列表.
public string NodeCategoryPath { get; set; }
value = graphLinksModel.NodeCategoryPath
graphLinksModel.NodeCategoryPath = value
获取或设置属性路径,指定如何找到节点数据类别。
public string NodeIsGroupPath { get; set; }
value = graphLinksModel.NodeIsGroupPath
graphLinksModel.NodeIsGroupPath = value
获取或设置属性路径,该路径可指定如何查找一个节点数据是否也是一个"容器"组.
public string NodeIsLinkLabelPath { get; set; }
value = graphLinksModel.NodeIsLinkLabelPath
graphLinksModel.NodeIsLinkLabelPath = value
获取或设置属性路径,指定如何查找一个节点数据是否也是链接数据的"标签".
public bool NodeKeyIsNodeData { get; set; }
value = graphLinksModel.NodeKeyIsNodeData
graphLinksModel.NodeKeyIsNodeData = value
获取或设定所有节点数据是否也是自己的密钥.
public string NodeKeyPath { get; set; }
value = graphLinksModel.NodeKeyPath
graphLinksModel.NodeKeyPath = value
获取或设置属性路径,指定如何获取节点数据的密钥。
public bool NodeKeyReferenceAutoInserts { get; set; }
value = graphLinksModel.NodeKeyReferenceAutoInserts
graphLinksModel.NodeKeyReferenceAutoInserts = value
获取或设定一个引用, 当%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
public IEnumerable NodesSource { get; set; }
value = graphLinksModel.NodesSource
graphLinksModel.NodesSource = value
获取或设置该模型的节点数据项的收集.
public ValidCycle ValidCycle { get; set; }
value = graphLinksModel.ValidCycle
graphLinksModel.ValidCycle = value
指定该模型允许的图型。
public ValidUnconnectedLinks ValidUnconnectedLinks { get; set; }
value = graphLinksModel.ValidUnconnectedLinks
graphLinksModel.ValidUnconnectedLinks = value
获得或设定每个链接数据是否必须有两端的指节点数据.
方法
AddCollectionCopy(GraphLinksModel{, GraphLinksModel{) : CopyDictionary<T, T, T, T>
复制已存在的节点并链接数据并加入到此模型中.
- coll
- 用于收集要复制的数据
- env
- 用于跟踪复制对象的% ICopyDictionary%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
返回值: 更新的复制字典,绘制原始数据以复制数据
public LinkType AddLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.AddLink(fromdata, fromparam, todata, toparam)
Add a link data to LinksSource.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
public void AddLink(LinkType linkdata)
graphLinksModel.AddLink(linkdata)
Add a link data to LinksSource.
- linkdata
public LinkType AddLinkCopy(LinkType linkdata)
result = graphLinksModel.AddLinkCopy(linkdata)
将链接数据的副本添加到此模型中.
- linkdata
返回值: 复制的链接数据
public void AddMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.AddMemberNodeKey(nodedata, memberkey)
将"成员"节点数据的关键值添加到节点数据"成员"的列表中.
- nodedata
- 将修改的节点数据
- memberkey
- 新的“成员”节点数据的关键值
public void AddNode(NodeType nodedata)
graphLinksModel.AddNode(nodedata)
Add a node data to NodesSource.
- nodedata
public NodeType AddNodeCopy(NodeType nodedata)
result = graphLinksModel.AddNodeCopy(nodedata)
将节点数据复制件添加到此模型中.
- nodedata
返回值: 复制的节点数据
protected override void ChangeDataValue(ModelChangedEventArgs e, bool undo)
graphLinksModel.ChangeDataValue(e, undo)
取消或重做时, 使用此名称来进行状态变化以创建模型数据 。
- e
- 描述要执行的更改的编辑器
- undo
- 撤销时为真; 重做时为假
protected override void ChangeModelValue(ModelChangedEventArgs e, bool undo)
graphLinksModel.ChangeModelValue(e, undo)
取消或重做时, 使用此名称来改变此模式的状态 。
- e
- 描述要执行的更改的编辑器
- undo
- 撤销时为真; 重做时为假
protected virtual bool CheckLinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam, bool ignoreexistinglink, LinkType oldlinkdata)
result = graphLinksModel.CheckLinkValid(fromdata, fromparam, todata, toparam, ignoreexistinglink, oldlinkdata)
如果在两个节点/端口之间添加链接,则产生一个结构合理的图表,则这个上游是真实的.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
- ignoreexistinglink
- 重新链接时为真; 添加新链接时为假
- oldlinkdata
- 如果为真实, 则可能修改的原始链接数据
返回值: 这个上游的行为取决于ValidCycle和ValidUnconnectedLinks的值.
protected virtual bool CheckMemberValid(NodeType groupnodedata, NodeType membernodedata, bool ignoreexistingmembership)
result = graphLinksModel.CheckMemberValid(groupnodedata, membernodedata, ignoreexistingmembership)
如果在组节点上添加一个节点会导致一个无效的图表,则此上游是真实的.
- groupnodedata
- 属于组的节点数据
- membernodedata
- 添加到组中时应考虑的节点数据
- ignoreexistingmembership
- 是否忽略现有集团成员,因为该成员正在被调出其现有集团
返回值: 这回错转来表示会打破模型的组图树结构的成员.
public void ClearUnresolvedReferences()
graphLinksModel.ClearUnresolvedReferences()
忘记所有未解决的延迟或转发引用 。
CopyLink1(T, GraphLinksModel{) : T
这是复制链接数据的第一个通过,负责构建副本并复制其大部分属性.
- linkdata
- env
- 用于映射复制对象的原始对象的词典
返回值: 复制的链接数据
CopyLink2(T, GraphLinksModel{, T, T, T, T)
这是复制链接数据的第二次通过,负责修复其他对象的引用.
- oldlinkdata
- 原始链接数据
- env
- 用于映射复制对象的原始对象的词典
- newlinkdata
- 复制的链接数据
- newfromnodedata
- 为了方便,复制的"从"节点
- newtonodedata
- 为了方便,复制的"去"节点
- newlinklabel
- 方便起见,复制的“ 标签” 节点
CopyNode1(T, GraphLinksModel{) : T
这是复制节点数据的首个传入,负责构建复制并复制其大部分属性.
- nodedata
- env
- 用于映射复制对象的原始对象的词典
返回值: 复制的节点数据
CopyNode2(T, GraphLinksModel{, T, T, IEnumerable<T>)
这是复制节点数据的第二次通过,负责修复其他对象的引用.
- oldnodedata
- 原始节点数据
- env
- 用于映射复制对象的原始对象的词典
- newnodedata
- 复制的节点数据
- newgroup
- 为了方便,复制的“家长”节点数据
- newmembers
- 为方便起见,请列出新复制的成员节点列表
public virtual CopyDictionary<NodeType, NodeKey, PortKey, LinkType> CreateCopyDictionary()
result = graphLinksModel.CreateCopyDictionary()
创建此模型的已初始化的 ICopyDictionary 。
返回值: 通常这将会是一出空词典.
public virtual DataCollection<NodeType, NodeKey, PortKey, LinkType> CreateDataCollection()
result = graphLinksModel.CreateDataCollection()
为此模型创建空 IDataCollection 。
CreateInitializedCopy(GraphLinksModel{) : GraphLinksModel<T, T, T, T>
制作本型号的复制品,而无需共享NodesSource或LinksSource所收.
- init
- 这是提供初始节点和链接数据的 DataCollection 。 (没有复制这些数据 。) 如果此数据无效, 初始的 NodesSource 和 LinksSource 值是空的 。
返回值: 和这个一样的模型,但数据不同
protected virtual void DeleteLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
graphLinksModel.DeleteLink(fromdata, fromparam, todata, toparam)
这种方法实际上执行从LinksSource收集中去除链接数据.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
protected virtual void DeleteLink(LinkType linkdata)
graphLinksModel.DeleteLink(linkdata)
这种方法实际上执行从LinksSource收集中去除链接数据.
- linkdata
protected virtual void DeleteMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DeleteMemberNodeKey(nodedata, memberkey)
这种方法实际上执行一个节点数据的修改,这样它就可以收集到儿童节点数据,而不包括给定的.
- nodedata
- 将修改的节点数据; 如果无效, 此方法将不起作用
- memberkey
- 成员节点数据的关键值; 如果无效, 此方法无效
protected virtual void DeleteNode(NodeType nodedata)
graphLinksModel.DeleteNode(nodedata)
这种方法实际上执行从NodesSource收集中去除一个节点数据.
- nodedata
public void DoGroupNodeChanged(NodeType nodedata)
graphLinksModel.DoGroupNodeChanged(nodedata)
当一个节点数据在某一组中的成员可能已经改变时,就应该称之为这个.
- nodedata
- 修改后节点数据
public void DoLinkAdded(LinkType linkdata)
graphLinksModel.DoLinkAdded(linkdata)
当LinksSource收集中添加了链接数据对象时,应该使用此名称.
- linkdata
public void DoLinkCategoryChanged(LinkType linkdata)
graphLinksModel.DoLinkCategoryChanged(linkdata)
当链接数据类别值可能已经改变时,应该使用此名称.
- linkdata
public void DoLinkLabelChanged(LinkType linkdata)
graphLinksModel.DoLinkLabelChanged(linkdata)
当链接数据的标签节点可能已经改变时,应该使用此名称.
- linkdata
public void DoLinkPortsChanged(LinkType linkdata)
graphLinksModel.DoLinkPortsChanged(linkdata)
当链接数据连接到节点或端口,无论是"从"还是"去",都可能已经改变时,应该使用此名称.
- linkdata
public void DoLinkRemoved(LinkType linkdata)
graphLinksModel.DoLinkRemoved(linkdata)
在从LinksSource收集中去除链接数据对象时,应该使用此名称.
- linkdata
public void DoMemberNodeKeyAdded(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DoMemberNodeKeyAdded(nodedata, memberkey)
当"成员"节点数据密钥被添加到"成员"节点密钥的收集中时,应该叫这个.
- nodedata
- 修改后节点数据
- memberkey
- 添加的“成员”节点数据键
public void DoMemberNodeKeyRemoved(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DoMemberNodeKeyRemoved(nodedata, memberkey)
当"成员"节点数据密钥从"成员"节点密钥的收集中被移除时,应该叫这个.
- nodedata
- 修改后节点数据
- memberkey
- 已删除的“成员”节点数据键
public void DoMemberNodeKeysChanged(NodeType nodedata)
graphLinksModel.DoMemberNodeKeysChanged(nodedata)
当一个节点数据列表的"成员"节点被替换时,应该使用此名称.
- nodedata
public void DoNodeAdded(NodeType nodedata)
graphLinksModel.DoNodeAdded(nodedata)
当一个节点数据对象被添加到NodesSource集合时,应该叫这个.
- nodedata
public void DoNodeCategoryChanged(NodeType nodedata)
graphLinksModel.DoNodeCategoryChanged(nodedata)
当一个节点数据分类值可能已经改变时,应该使用此名.
- nodedata
public void DoNodeKeyChanged(NodeType nodedata)
graphLinksModel.DoNodeKeyChanged(nodedata)
当一个节点数据的关键值可能已经改变时,应该使用此名.
- nodedata
public void DoNodeRemoved(NodeType nodedata)
graphLinksModel.DoNodeRemoved(nodedata)
当从NodesSource收集中去除一个节点数据对象时,应该叫这个.
- nodedata
protected virtual string FindCategoryForLink(LinkType linkdata)
result = graphLinksModel.FindCategoryForLink(linkdata)
查找链接数据的类别。
- linkdata
返回值: 默认为空字符串
protected virtual string FindCategoryForNode(NodeType nodedata)
result = graphLinksModel.FindCategoryForNode(nodedata)
查找节点数据类别。
- nodedata
返回值: 默认为空字符串
protected virtual NodeKey FindFromNodeKeyForLink(LinkType linkdata)
result = graphLinksModel.FindFromNodeKeyForLink(linkdata)
查找给定链接数据的"从"节点键.
- linkdata
返回值: a 用于连接的节点
protected virtual PortKey FindFromParameterForLink(LinkType linkdata)
result = graphLinksModel.FindFromParameterForLink(linkdata)
查找给定链接数据"从"节点连接的额外信息.
- linkdata
返回值: a 包括未缴摊款、未缴摊款、
protected virtual NodeKey FindGroupKeyForNode(NodeType nodedata)
result = graphLinksModel.FindGroupKeyForNode(nodedata)
查找含有给定节点数据(如果有)的组节点密钥。
- nodedata
返回值: a 用于包含的组节点,或者如果该节点没有容器节点,则该类型的默认值
protected virtual bool FindIsGroupForNode(NodeType nodedata)
result = graphLinksModel.FindIsGroupForNode(nodedata)
查找一个节点数据是一组还是容器中的其他节点.
- nodedata
protected virtual bool FindIsLinkLabelForNode(NodeType nodedata)
result = graphLinksModel.FindIsLinkLabelForNode(nodedata)
查找一个节点数据是否是一个链接数据的"标签".
- nodedata
protected virtual NodeKey FindKeyForNode(NodeType nodedata)
result = graphLinksModel.FindKeyForNode(nodedata)
查找节点数据的密钥 。
- nodedata
返回值: 用于此模型中给定的节点数据的唯一密钥( 希望)
protected virtual NodeKey FindLabelNodeKeyForLink(LinkType linkdata)
result = graphLinksModel.FindLabelNodeKeyForLink(linkdata)
查找给定链接数据的"label"节点密钥,如果有的话.
- linkdata
返回值: a 用于标签节点数据
protected virtual IEnumerable FindMemberNodeKeysForNode(NodeType nodedata)
result = graphLinksModel.FindMemberNodeKeysForNode(nodedata)
查找一个节点数据对象的子节点的密钥列表 。
- nodedata
返回值: 键列表,可假设
public NodeType FindNodeByKey(NodeKey key)
result = graphLinksModel.FindNodeByKey(key)
给一个键,用那个键找到节点数据.
- key
- 此参数的无效值将导致默认值
返回值: a; 如果已知该模式中没有这样的节点数据, 则该值将是该类型的默认值
protected virtual NodeKey FindToNodeKeyForLink(LinkType linkdata)
result = graphLinksModel.FindToNodeKeyForLink(linkdata)
查找给定链接数据的"to"节点密钥.
- linkdata
返回值: a 用于连接的节点
protected virtual PortKey FindToParameterForLink(LinkType linkdata)
result = graphLinksModel.FindToParameterForLink(linkdata)
查找指定链接数据的"到"节点连接的附加信息.
- linkdata
返回值: a 包括未缴摊款、未缴摊款、
public string GetCategoryForLink(LinkType linkdata)
result = graphLinksModel.GetCategoryForLink(linkdata)
这种方法得到链接的类别.
- linkdata
返回值: a 字符串,默认为空字符串
public string GetCategoryForNode(NodeType nodedata)
result = graphLinksModel.GetCategoryForNode(nodedata)
这种方法得到一个节点的类别.
- nodedata
返回值: a 字符串,默认为空字符串
public IEnumerable<NodeType> GetConnectedNodesForNode(NodeType nodedata, Predicate<PortKey> portpred)
result = graphLinksModel.GetConnectedNodesForNode(nodedata, portpred)
返回一个直接连接到给定节点的节点数据的序列,在任意一个方向.
- nodedata
- portpred
- 用于每个端口参数的上方;如果非上方,则该上方必须是返回序列中要包含的节点的正数
返回值: 可假设
public IEnumerable<NodeType> GetConnectedNodesForNode(NodeType nodedata)
result = graphLinksModel.GetConnectedNodesForNode(nodedata)
返回一个直接连接到给定节点的节点数据的序列,在任意一个方向.
- nodedata
返回值: 可假设
public IEnumerable<LinkType> GetFromLinksForNode(NodeType nodedata)
result = graphLinksModel.GetFromLinksForNode(nodedata)
返回一个在给定节点数据上被被收录的链接数据的序列,只进入给定节点.
- nodedata
返回值: 可假设
public NodeType GetFromNodeForLink(LinkType linkdata)
result = graphLinksModel.GetFromNodeForLink(linkdata)
返回链接数据连接的"从"节点数据.
- linkdata
返回值: 节点数据
public IEnumerable<NodeType> GetFromNodesForNode(NodeType nodedata)
result = graphLinksModel.GetFromNodesForNode(nodedata)
返回一个通过链接直接连接到某个给定节点的节点数据的序列.
- nodedata
返回值: 可假设
public IEnumerable<NodeType> GetFromNodesForNode(NodeType nodedata, Predicate<PortKey> toportpred)
result = graphLinksModel.GetFromNodesForNode(nodedata, toportpred)
返回一个通过链接直接连接到某个给定节点的节点数据的序列.
- nodedata
- toportpred
- 用于每个"到"端口参数的上方;如果非上方,则该上方必须是真实的,用于将"从"节点包含在返回序列中
返回值: 可假设
public PortKey GetFromParameterForLink(LinkType linkdata)
result = graphLinksModel.GetFromParameterForLink(linkdata)
返回链接数据"从"端"的附加"端"信息.
- linkdata
public NodeType GetGroupForLink(LinkType linkdata)
result = graphLinksModel.GetGroupForLink(linkdata)
如果链接属于一个组,则返回给定链接数据的容器节点数据。
- linkdata
返回值: 节点数据
public NodeType GetGroupForNode(NodeType nodedata)
result = graphLinksModel.GetGroupForNode(nodedata)
如果有,则返回给定节点数据的容器组节点数据。
- nodedata
返回值: 节点数据
public bool GetHasLabeledLinkForNode(NodeType nodedata)
result = graphLinksModel.GetHasLabeledLinkForNode(nodedata)
如果一个节点数据与链接数据相联,则该上游数据对它的"标签"是真实的.
- nodedata
public bool GetHasLabelNodeForLink(LinkType linkdata)
result = graphLinksModel.GetHasLabelNodeForLink(linkdata)
如果给定的链接数据有一个"标签"节点,则此上游是真实的.
- linkdata
public bool GetIsGroupForNode(NodeType nodedata)
result = graphLinksModel.GetIsGroupForNode(nodedata)
如果一个给定的节点数据可能是由其他节点组成的组(i.e. a 容器),则该上游是真实的.
- nodedata
public bool GetIsLinkLabelForNode(NodeType nodedata)
result = graphLinksModel.GetIsLinkLabelForNode(nodedata)
如果给定的节点数据可以作为链接的"标签"来使用,则此上游是真实的.
- nodedata
public LinkType GetLabeledLinkForNode(NodeType nodedata)
result = graphLinksModel.GetLabeledLinkForNode(nodedata)
获取将给定的节点数据称为"label"的链接数据.
- nodedata
返回值: 链接数据
public NodeType GetLabelNodeForLink(LinkType linkdata)
result = graphLinksModel.GetLabelNodeForLink(linkdata)
获取链接数据的"标签"节点数据,如果有的话.
- linkdata
返回值: 节点数据
public IEnumerable<LinkType> GetLinksBetweenNodes(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.GetLinksBetweenNodes(fromdata, fromparam, todata, toparam)
返回从一个节点到另一个节点的所有链接数据的序列,可能仅限于某些"端口".
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
返回值: 可假设
public IEnumerable<LinkType> GetLinksForNode(NodeType nodedata)
result = graphLinksModel.GetLinksForNode(nodedata)
返回一个在给定节点数据上被收缩的链接数据的序列,无论是向哪个方向.
- nodedata
返回值: 可假设
public IEnumerable<LinkType> GetLinksForNode(NodeType nodedata, Predicate<LinkType> predicate)
result = graphLinksModel.GetLinksForNode(nodedata, predicate)
返回一个在给定节点数据上被收录的链接数据的序列,无论是朝哪个方向,都满足给定的上游.
- nodedata
- predicate
- 代表将一个参数当作一个参数,并返回布尔
返回值: 可假设
public IEnumerable<LinkType> GetMemberLinksForGroup(NodeType nodedata)
result = graphLinksModel.GetMemberLinksForGroup(nodedata)
返回一个给定节点数据所包含链接数据的序列.
- nodedata
返回值: a 可假设成员链接数据;如果没有成员链接,则为空序列
public IEnumerable<NodeType> GetMemberNodesForGroup(NodeType nodedata)
result = graphLinksModel.GetMemberNodesForGroup(nodedata)
返回一个特定节点数据直接成员的节点数据序列.
- nodedata
返回值: a 可假设成员节点数据;如果没有成员,则为空序列
public Type GetNodeType()
result = graphLinksModel.GetNodeType()
退回去,你还给我
返回值: a 类型,不是节点数据对象,也不是字符串
public IEnumerable<LinkType> GetToLinksForNode(NodeType nodedata)
result = graphLinksModel.GetToLinksForNode(nodedata)
返回在给定节点数据上被被收录的链接数据的序列,只从给定节点中出.
- nodedata
返回值: 可假设
public NodeType GetToNodeForLink(LinkType linkdata)
result = graphLinksModel.GetToNodeForLink(linkdata)
返回链接数据连接的"到"节点数据.
- linkdata
返回值: 节点数据
public IEnumerable<NodeType> GetToNodesForNode(NodeType nodedata, Predicate<PortKey> fromportpred)
result = graphLinksModel.GetToNodesForNode(nodedata, fromportpred)
返回一个从给定节点发出的链接直接连接的节点数据序列.
- nodedata
- fromportpred
- 用于每个"从"端口参数的上方;如果非上方,则此上方必须是真实的,用于将"到"节点包含在返回序列中
返回值: 可假设
public IEnumerable<NodeType> GetToNodesForNode(NodeType nodedata)
result = graphLinksModel.GetToNodesForNode(nodedata)
返回一个从给定节点发出的链接直接连接的节点数据序列.
- nodedata
返回值: 可假设
public PortKey GetToParameterForLink(LinkType linkdata)
result = graphLinksModel.GetToParameterForLink(linkdata)
返回链接数据"到"端的"端"的额外"端"信息.
- linkdata
protected virtual void HandleLinkPropertyChanged(object sender, PropertyChangedEventArgs e)
graphLinksModel.HandleLinkPropertyChanged(sender, e)
这是链接数据的 INotifyPropertyChanged 事件处理器 。
- sender
- e
- 最好是一个ModelChangedEventArgs,它描述什么是变化以及如何变化的
protected virtual void HandleNodePropertyChanged(object sender, PropertyChangedEventArgs e)
graphLinksModel.HandleNodePropertyChanged(sender, e)
这是用于节点数据的 INotifyPropertyChanged 事件处理器 。
- sender
- e
- 最好是一个ModelChangedEventArgs,它描述什么是变化以及如何变化的
protected virtual LinkType InsertLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.InsertLink(fromdata, fromparam, todata, toparam)
这种方法实际上执行创建并添加了LinksSource收藏的链接数据.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
protected virtual void InsertLink(LinkType linkdata)
graphLinksModel.InsertLink(linkdata)
这种方法实际上执行在LinksSource收集中添加链接数据.
- linkdata
protected virtual void InsertMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.InsertMemberNodeKey(nodedata, memberkey)
这种方法实际上执行一个节点数据的修改,这样它就可以收集成员节点数据包括给定的.
- nodedata
- 将修改的节点数据; 如果无效, 此方法将不起作用
- memberkey
- 新的“成员”节点数据的关键值; 如果无效, 此方法将无效
protected virtual void InsertNode(NodeType nodedata)
graphLinksModel.InsertNode(nodedata)
这种方法实际上执行在NodesSource收集中添加节点数据.
- nodedata
protected virtual bool IsEqualPortParameters(PortKey a, PortKey b)
result = graphLinksModel.IsEqualPortParameters(a, b)
此上游比较了两个值,如果它们"相等"则返回为真.
- a
- b
返回值: 通常情况下, 类型使用默认的 EqualityComparer 。 但是, 如果这种平等比较不适合您的端口信息, 您可能需要推翻此方法 。
public bool IsLinkData(LinkType linkdata)
result = graphLinksModel.IsLinkData(linkdata)
如果该参数是本模型中的链接数据,则该上游是真实的.
- linkdata
- 检查对象,看看它是否是该模型中已知的链接数据
返回值: 如果在 LinksSource 中, 则为真
public bool IsLinked(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.IsLinked(fromdata, fromparam, todata, toparam)
如果从一个节点数据/端口到另一个节点数据/端口有链接,则此上游是真实的.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
public bool IsLinkType(object linkdata)
result = graphLinksModel.IsLinkType(linkdata)
退回去,你还给我
返回值: a 类型,不是链接数据对象,也不是字符串
public bool IsLinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.IsLinkValid(fromdata, fromparam, todata, toparam)
如果在两个节点/端口之间添加链接,则产生一个有效的图表,则这个上方是真实的.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
public bool IsMember(NodeType groupnodedata, NodeType membernodedata)
result = graphLinksModel.IsMember(groupnodedata, membernodedata)
如果该上游系集装箱组的成员,则该上游系属实。
- groupnodedata
- membernodedata
public bool IsMemberValid(NodeType groupnodedata, NodeType membernodedata, bool ignoreexistingmembership)
result = graphLinksModel.IsMemberValid(groupnodedata, membernodedata, ignoreexistingmembership)
如果添加到组节点( ) 会导致一个无效的图, 此上游是真实的 。
- groupnodedata
- 属于组的节点数据
- membernodedata
- 节点数据
- ignoreexistingmembership
- 是否忽略现有集团成员,因为该成员正在被调出其现有集团
public bool IsNodeData(NodeType nodedata)
result = graphLinksModel.IsNodeData(nodedata)
如果参数是本模型中的一个节点数据,则此上游是真实的.
- nodedata
- 检查对象,以查看它是否是该模型中已知的节点数据
返回值: 如果在 NodesSource 中, 则为真
public bool IsNodeType(object nodedata)
result = graphLinksModel.IsNodeType(nodedata)
当论证是...的例子时,这个前提是真实的.
- nodedata
- 选中的任意对象, 兼容性将是一个节点数据
返回值: 如果可以把事实交给人,则属实;否则,则属实。
public bool IsRelinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam, LinkType oldlinkdata)
result = graphLinksModel.IsRelinkValid(fromdata, fromparam, todata, toparam, oldlinkdata)
如果替换两个节点/端口之间的链接会导致一个有效的图表,则这个上方是真实的.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
- oldlinkdata
- 原始链接数据,可修改
public void Load<NodeDataType, LinkDataType>(XContainer root, XName nodename, XName linkname)
graphLinksModel.Load(root, nodename, linkname)
由于一个Linq用于XML XContaner持有节点并链接数据,因此将这个模型的NodesSource和LinksSource集以收集新的节点数据和新的链接数据来取代.
- root
- 拥有全部数据的 XContain
- nodename
- 每一个持有节点数据的 XElement 名称
- linkname
- 每一个 XElement 持有链接数据的名称
public void Load<NodeDataType, LinkDataType>(XContainer root, Func<XElement, NodeDataType> nodedataallocator, Func<XElement, LinkDataType> linkdataallocator)
graphLinksModel.Load(root, nodedataallocator, linkdataallocator)
由于一个Linq用于XML XContaner持有节点并链接数据,因此将这个模型的NodesSource和LinksSource集以收集新的节点数据和新的链接数据来取代.
- root
- 拥有全部数据的 XContain
- nodedataallocator
- 函数,如果需要使用 XElement 并返回新构造的类别对象,如果忽略 XElement 则无效
- linkdataallocator
- 函数,如果需要使用 XElement 并返回新构造的类别对象,如果忽略 XElement 则无效
protected virtual bool MakeNodeKeyUnique(NodeType nodedata)
result = graphLinksModel.MakeNodeKeyUnique(nodedata)
当找到重复的密钥时, 这种方法就叫 。
- nodedata
返回值: true 接受数据为在模型中键独有后的一个节点; fult to 忽略了此数据.
protected virtual void ModifyGroupNodeKey(NodeType nodedata, NodeKey groupkey)
graphLinksModel.ModifyGroupNodeKey(nodedata, groupkey)
这种方法实际上执行一个节点数据的修改,这样它引用包含组节点数据(如果有的话)就是给定的.
- nodedata
- 将修改的节点数据
- groupkey
- 组合节点数据的关键值
protected virtual void ModifyLinkFromPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.ModifyLinkFromPort(linkdata, nodekey, portparam)
这种方法实际上执行对链接数据的修改,以改变"从"节点数据和链接"从"从"端口信息"的引用.
- linkdata
- 需要修改的链接数据
- nodekey
- 新的节点数据
- portparam
protected virtual void ModifyLinkLabelKey(LinkType linkdata, NodeKey linklabelkey)
graphLinksModel.ModifyLinkLabelKey(linkdata, linklabelkey)
这种方法实际上执行对链接数据的修改,以改变"标签"节点数据的引用.
- linkdata
- 需要修改的链接数据
- linklabelkey
- 新的标签数据
protected virtual void ModifyLinkToPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.ModifyLinkToPort(linkdata, nodekey, portparam)
这种方法实际上执行对链接数据的修改,以改变"到"节点数据的引用和链接的"到"端口信息.
- linkdata
- 需要修改的链接数据
- nodekey
- 新的节点数据
- portparam
protected virtual void ModifyMemberNodeKeys(NodeType nodedata, IEnumerable membernodekeys)
graphLinksModel.ModifyMemberNodeKeys(nodedata, membernodekeys)
这种方法实际上执行一个组节点数据的替换成员节点密钥的收集.
- nodedata
- 将修改的节点数据
- membernodekeys
- “ 成员” 节点数据密钥值的序列
public void RemoveLink(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
graphLinksModel.RemoveLink(fromdata, fromparam, todata, toparam)
从连接两个节点/端口的LinksSource中去除所有链接数据.
- fromdata
- 一个节点键, 表示链接来自的节点数据
- fromparam
- 用于识别“从”节点上连接到的端口的可选值
- todata
- 节点键表示链接所连接的节点数据
- toparam
- 用于识别“到”节点上哪个端口链接到的可选值
public void RemoveLink(LinkType linkdata)
graphLinksModel.RemoveLink(linkdata)
Remove a link data from LinksSource.
- linkdata
public void RemoveMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.RemoveMemberNodeKey(nodedata, memberkey)
从组节点数据"成员"密钥值列表中删除一个子节点数据的关键值.
- nodedata
- 将修改的节点数据
- memberkey
- 用于“成员”节点数据的密钥值
public void RemoveNode(NodeType nodedata)
graphLinksModel.RemoveNode(nodedata)
Remove a node data from NodesSource.
- nodedata
public void ResolveAllReferences()
graphLinksModel.ResolveAllReferences()
原因 &% ResolveNodeKey\%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
protected virtual void ResolveNodeKey(NodeKey nodekey)
graphLinksModel.ResolveNodeKey(nodekey)
ResolveAllReferences反复使用此名称, 每一个已知的延迟或前置节点引用一次 。
- nodekey
public XElement Save<NodeDataType, LinkDataType>(XName rootname, XName nodename, XName linkname)
result = graphLinksModel.Save(rootname, nodename, linkname)
为 XML XElement 生成一个 Linq , 持有所有节点并链接数据 。
- rootname
- 返回的元素名称
- nodename
- 每一个持有节点数据的 XElement 名称
- linkname
- 每一个 XElement 持有链接数据的名称
返回值: 元素
public void SetGroupNodeKey(NodeType nodedata, NodeKey groupkey)
graphLinksModel.SetGroupNodeKey(nodedata, groupkey)
更改节点数据,以便指不同的容器组节点数据,由节点键来表示.
- nodedata
- 将修改的节点数据
- groupkey
- 新建“ 组” 节点数据的关键值
public void SetLinkFromPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.SetLinkFromPort(linkdata, nodekey, portparam)
更改链接数据,使之指不同的"与"节点数据"和相关端口信息.
- linkdata
- 需要修改的链接数据
- nodekey
- 新的节点数据
- portparam
public void SetLinkLabelKey(LinkType linkdata, NodeKey linklabelkey)
graphLinksModel.SetLinkLabelKey(linkdata, linklabelkey)
更改链接数据,使之指代不同的"标签"节点数据.
- linkdata
- 需要修改的链接数据
- linklabelkey
- 新的标签数据
public void SetLinkToPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.SetLinkToPort(linkdata, nodekey, portparam)
更改链接数据,使其指不同的"到"节点数据和相关端口信息.
- linkdata
- 需要修改的链接数据
- nodekey
- 新的节点数据
- portparam
public void SetMemberNodeKeys(NodeType nodedata, IEnumerable membernodekeys)
graphLinksModel.SetMemberNodeKeys(nodedata, membernodekeys)
替换节点数据“成员”密钥值列表。
- nodedata
- 将修改的节点数据
- membernodekeys
- “ 成员” 节点数据密钥值的序列